设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4843|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 u/ c" a3 V& Q' c- v: P) U! j% W3 K1 O5 E, S
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# m, M% n2 s; r! S1 S6 M/ H9 U* t* j
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." N- \; ^# W. g9 M- {
swarm.SignatureNotFoundException
5 Y; C+ |/ ^( @. a  Z1 ^) f        at swarm.Selector.<init>(Selector.java:76)8 I& v4 y0 q5 S  V/ U( D: E
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( l1 P" c7 z4 N8 `9 M+ G
        at ActionGroupDemo.main(ActionGroupDemo.java:67). T! `4 |6 y! b* H. {) R( O8 D

4 {! J2 B7 b, H( Q) g; Q/ _/ T2 ?- ]5 V/ ?* v7 N
import swarm.objectbase.SwarmImpl;
5 x) s. v# S$ M$ F: X2 Limport swarm.objectbase.Swarm;) A( i( [4 |9 ?$ \7 p. L& w
import swarm.activity.ScheduleImpl;7 `! T; N, r# o+ T
import swarm.activity.Activity;1 u! A4 |0 e9 A4 J. k
import swarm.activity.ActionGroupImpl;  ^) T* u. f  h7 ~, ?
import swarm.collections.ListImpl;* }/ y" }* h( A1 C) C" L) P
import swarm.defobj.Zone;
7 f# c& g/ B" C+ j8 Eimport swarm.Globals;
. T! I! f0 x4 S8 }8 G$ Qimport swarm.Selector;
: M3 c6 h, X+ i+ x9 P2 j, M3 D! X* Z* Simport swarm.activity.ActionGroup; ' G) O" O+ e& \+ C) t. @; z
class Agent {
# {: c" D% b7 q8 T% C5 y        char id;
- x& F) @; G. y! O3 w6 N6 M& p) ?( ~4 s; |9 |
        Agent(char id) {
3 a$ X% W2 K; N0 k6 W/ H                this.id = id;
. u7 w8 x8 k5 V& q' t5 g8 B. Z        }: ^2 {, x3 y* S# W  O& d) T  o  o
1 q$ D1 p& b, @/ c8 |, h( g, n- T7 }
        public void agentStep() {
6 K% m4 c2 R( p) C+ u! P                System.out.println(id + ":" + Globals.env.getCurrentTime());/ [& B$ d9 A1 j7 T8 D. E) N% T1 N/ w/ F' |
        }
7 j- k7 j+ D6 |. Y}
  L2 h' K, a" [( @! @5 }$ P- f) k) l5 A8 J) L. t, g
public class ActionGroupDemo extends SwarmImpl {4 H( u* v2 B+ \# ~  }3 r2 k5 j# u
        ScheduleImpl schedule;' L2 V0 r& k+ Z! ], i
        ActionGroupImpl actionGroup;
! I1 l; D8 M; p0 F9 k: \" T0 ]: U        ListImpl list;/ f) V- F& U7 \9 g2 v
        char Id = 'a';; p0 D: d* [$ ^& R& H( z  p

. ~9 G6 h6 y9 B0 _9 Z" Q' |        ActionGroupDemo(Zone aZone) {: l) }3 {. C. n3 I% U8 Z
                super(aZone);
; g3 X. ?: ~. _' Q, ^                list = new ListImpl(aZone);4 V5 r: U7 [) @* ]
                swarmSetp();
2 O; y% I2 H' ?# b% ~! f                actionGroup = new ActionGroupImpl(aZone);8 Z1 k) N9 ~) j; X: ~
                schedule = new ScheduleImpl(aZone);
2 w' u" C3 ?1 t. Z, H* @3 b                try {; Z5 `/ a6 T' g' ^) k. z! O8 I
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
: |" Z- Z8 {9 u& q# J( B1 [. }) C                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; j" U- @, b9 j1 x7 B
                        
, Z; w) u( a: l( d0 g5 Y& b                        actionGroup.createActionForEach$message(list, agentSel);7 h- {% j6 p4 t4 ~# z/ [
                        actionGroup.createActionTo$message(this, swarmSel);/ {9 `( {8 _: {1 }
                        schedule.at$createAction(0, actionGroup);
1 r4 o; ]6 I* i( H+ f3 Y                        schedule.at$createAction(1, actionGroup);  v" s; z* v5 G5 D' H
                        schedule.at$createAction(2, actionGroup);
/ e( P, n8 W" U5 f/ y- U5 J7 _4 P% D6 B  i  N
                } catch (Exception e) {
4 y4 g: U% x+ |3 ]& r& e                        e.printStackTrace(System.err);
/ \7 v5 S: C# O9 w( P                        //System.out.println(e);1 o' _; X& v4 \# Z! J3 x  n
                        System.exit(1);$ @! O: G% w/ q1 W+ ?# ^* v6 `6 _
                }
' ~+ G/ @3 N/ h. \. `% l
  r9 }& U0 j% N% D" c3 [) h6 z9 r: A( r; w
        }
& B; [) @1 R& U: c5 J2 l$ M1 `( P- A1 E8 j9 Y9 a
        private void swarmSetp() {
; J0 a% s6 d  X, p7 T4 f+ O                list.addLast(new Agent(Id));% ^+ C) R$ X, |1 z  k; d  ~
                Id++;
( D6 y6 z* n5 y3 p6 {: n8 }        }
( u  u9 c. ~& H+ Z) p1 N! Z6 F" o; Y1 }
        public Activity activateIn(Swarm context) {
- q4 O  ]5 t: N+ Y: I* e                super.activateIn(context);& b2 R- j& j" k9 @# b6 n: ]
                schedule.activateIn(this);
& c0 a- e8 r, i' J/ O: M                return getActivity();( J7 x4 O9 X  B; h0 V( L; w
        }
; D  `/ [) U' {0 p7 V& J( c. b; B" |. h, m5 b( q, c  `( d# e
        public static void main(String[] args) {* x9 B& ~( q/ M  i" L7 e
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 o4 `, e$ Y) R/ f* ~0 Q! }" \
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" _; @& J& m5 q1 n: u/ X0 ~                swarms.buildObjects();
0 Y  {9 v- B+ l                swarms.buildActions();
3 Z" u* F  {  f, }/ L* Y1 u                swarms.activateIn(null).run();. |/ x' |1 L. @! p: A
        }
* E& ]8 q/ z$ s* v/ l9 @% @: o  D
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-14 09:57 , Processed in 0.020678 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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