设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5510|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , I# i9 p1 l& k6 |# g* W8 ]  J4 l
3 i' j5 h% A+ \5 C% b6 I
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' ]* ~8 w3 Q) \以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 n8 V( h; i. x( ?4 W/ tswarm.SignatureNotFoundException  ?, T/ o# O  c5 C9 Q: V
        at swarm.Selector.<init>(Selector.java:76)
$ x7 t& K# K0 L) a) G4 `/ G; q        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
  Q  r# C. z9 S5 X$ k        at ActionGroupDemo.main(ActionGroupDemo.java:67); C  l; P9 F& [. `. [

; o; E& c0 w8 Q. n0 w$ \  ]; d! `/ Q& I2 F6 f
import swarm.objectbase.SwarmImpl;, w* _0 ^0 R+ }, u* d" K1 @9 W
import swarm.objectbase.Swarm;  z: W) }7 V) g- l" g) J
import swarm.activity.ScheduleImpl;
: S( G6 y8 f! N3 ]" D% `. C% `import swarm.activity.Activity;# K- \, q2 B0 T
import swarm.activity.ActionGroupImpl;7 d3 a' Y  y4 f% o7 y( J8 e1 f
import swarm.collections.ListImpl;: c' r6 {- n' t+ ~' G0 H# }
import swarm.defobj.Zone; ! Y$ a0 d  m2 e! s
import swarm.Globals;
& ~- b4 H% b2 j8 A2 yimport swarm.Selector;
8 q: ^( D. ^1 e3 {6 @import swarm.activity.ActionGroup;
# H0 v: E% ]: F. Z1 \4 Tclass Agent {
& Z$ H% e3 }9 h% A3 G. p( M: n; A        char id;
3 g; B  h0 V7 \+ s% j3 [$ e, N; ], q$ j. n
        Agent(char id) {9 U  Y5 E8 E- v! d, _
                this.id = id;
" \6 h# U6 O$ d1 v8 b        }
/ f3 Y' L) S8 B  c7 F7 W+ r  [, k8 q" h- S6 j
        public void agentStep() {
/ |( H! Z: q4 h. J% W                System.out.println(id + ":" + Globals.env.getCurrentTime());
* m' ?9 x0 ^/ {! j: N" O. V        }7 x3 h, c" w4 u1 K) L7 l
}/ h2 @* s" z! r5 L  w: P% d7 l1 ?8 ?
" R0 L9 T- r$ S4 `. v
public class ActionGroupDemo extends SwarmImpl {- H1 D/ q- Y- n# p  r; H0 k3 _
        ScheduleImpl schedule;
: j/ {+ R8 Z& n        ActionGroupImpl actionGroup;
1 j" @: k# f2 A- Z' a( d        ListImpl list;
+ T) k8 f2 D7 E4 Q+ T+ J1 |        char Id = 'a';
2 Y' s, [9 j! |  S; F0 M  q+ ^  p  Z, d; ~' f1 u/ U
        ActionGroupDemo(Zone aZone) {; x; d0 [7 _6 B+ t+ w5 t2 s
                super(aZone);
  Z8 m; I. A) o9 W                list = new ListImpl(aZone);4 H% n, W: p6 Z
                swarmSetp();
$ N, y( z7 [3 ?                actionGroup = new ActionGroupImpl(aZone);: b0 L' {6 u/ e8 j* Z7 }
                schedule = new ScheduleImpl(aZone);* ]# F3 ~7 w0 r2 {8 Q+ e
                try {) Y, Q, I( ~' q1 N/ g( a
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
* O& W- h6 d- q6 i  `0 o                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 U+ s( c# {: |5 P2 t                        
1 ^, x4 j4 h2 \0 s8 R  J; V: V                        actionGroup.createActionForEach$message(list, agentSel);8 d. E$ H2 o& D# S
                        actionGroup.createActionTo$message(this, swarmSel);7 u; G! e  s# T; N0 u
                        schedule.at$createAction(0, actionGroup);9 v0 J1 Y" z. V" T6 H
                        schedule.at$createAction(1, actionGroup);
/ q. P; X; ^& w2 x( @. Q3 l* q                        schedule.at$createAction(2, actionGroup);
  M9 K4 g2 ^( k
2 b! }/ m( s& E2 r7 G                } catch (Exception e) {
/ n2 |) Z: I" N                        e.printStackTrace(System.err);$ b3 o5 M7 i0 r
                        //System.out.println(e);
9 ]' c. S6 R# X7 c/ N, b- S6 T3 Q6 ~                        System.exit(1);7 {; s5 L" d# |9 o
                }
9 H: o# R4 z( J% I6 [( S4 }. }4 F
8 W  K+ d, M% N% K# I  D) F. m
        }( P$ M6 E0 x2 h8 _
9 g  @2 U8 ]5 x# p- |' P/ `
        private void swarmSetp() {
7 }( V, U  s8 {9 J) `                list.addLast(new Agent(Id));9 G4 o! |& K" S( q
                Id++;0 O+ F. y, s% c- q" {+ G# k
        }
" U3 I6 [$ W# Y' y+ l6 P; x2 E* G; _: P5 u
        public Activity activateIn(Swarm context) {( y' W8 A& e4 g" e6 h) R
                super.activateIn(context);: X/ y( e3 `8 @; U
                schedule.activateIn(this);
. i! ]( W0 P% a. h- j6 l                return getActivity();
8 t! M$ \# G' j        }
" ]: q5 e+ t( @) S0 O" E  V- F( J% W" f+ M, D
        public static void main(String[] args) {8 m* ]' Z% l5 h" e* D; e' T) G8 v
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 `7 S! A* U# r0 F8 v  @: y" l$ G) n
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, h# P# o% Q& l" e9 o3 V                swarms.buildObjects();
: l; J: |( o( {% J: l% s) A1 I                swarms.buildActions();
& ~# A3 ]* _5 \% l7 q3 G                swarms.activateIn(null).run();, w' k) u3 [6 p6 f
        }. [! C4 H. Q, c9 p' l2 P

7 F% R1 y: H  r+ Z( v; j4 A: H}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-12-11 13:34 , Processed in 0.018207 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表