设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13595|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! B$ I; T* F$ T2 E
1 ]& K0 n" `9 o% B0 g4 ~  V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 T5 m2 O' m2 E/ k6 Z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 T! F5 x% |" L8 J' e
swarm.SignatureNotFoundException7 H) @+ }/ O2 B  f0 n
        at swarm.Selector.<init>(Selector.java:76)
* e4 m# q1 N# o# @        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 m* W! g' I8 W5 j: s
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) Z- N# l' U0 x$ Y4 k' f' e- O7 o' X2 y- a( L

, U3 b& T4 _, o" o" f, a/ rimport swarm.objectbase.SwarmImpl;! X9 [$ _5 o: N; D( v' ]# T
import swarm.objectbase.Swarm;# e% b) W9 v& W0 Z
import swarm.activity.ScheduleImpl;
; g) c) R8 W: S( k0 A+ \8 @( \import swarm.activity.Activity;
+ z' l* W" D3 {8 `- T" [5 D- kimport swarm.activity.ActionGroupImpl;4 S+ M) j" y, [. R, h* g5 I
import swarm.collections.ListImpl;
# p1 R, B. C& b6 [, Q0 E0 l: ^! J4 Eimport swarm.defobj.Zone; . D( E/ @0 |; T5 x; ^) ]
import swarm.Globals;
; k6 V! E- @1 Q* G+ B8 v( pimport swarm.Selector;
! ?& E2 J. u( y5 e) ~$ N" I) Z: A9 uimport swarm.activity.ActionGroup; 9 _' A. A) ^) a$ Z6 D) z  M
class Agent {
1 z  k( p3 j( U3 j3 `        char id;
( a6 K# M: {- V/ r
6 ?4 W* j8 R2 y$ w2 ^1 M! u/ u        Agent(char id) {/ T) ^2 q6 f! l$ d% D
                this.id = id;9 B5 V/ H# f1 X+ r& Q
        }* j7 L( i) x8 j
4 K6 I0 _  F+ S$ U
        public void agentStep() {
# L5 N6 ?5 Y; L! @: b+ G                System.out.println(id + ":" + Globals.env.getCurrentTime());
! q6 q2 m3 z9 o6 Y9 `( {* X        }
( \2 V4 R1 {! E! _8 Z}1 E; y* B  @+ G$ c5 }& ?

- Y1 t+ C/ u2 u7 fpublic class ActionGroupDemo extends SwarmImpl {
+ C7 }- l  A% \0 {, W! B4 r) A        ScheduleImpl schedule;$ D8 f- g" D. X
        ActionGroupImpl actionGroup;0 N: m, m; T* M; r' {) i
        ListImpl list;$ X: d9 d: ~% I# B2 D
        char Id = 'a';
  Z3 S. E& c. L2 y; S8 o
$ Y1 I5 X  ]1 H* b        ActionGroupDemo(Zone aZone) {0 j7 Z) i$ x% E- q4 [+ z
                super(aZone);
! L) E0 E3 U, C                list = new ListImpl(aZone);
6 W+ u$ ?+ B- l+ u: j                swarmSetp();
% X, k, N9 y* c% c0 \" U                actionGroup = new ActionGroupImpl(aZone);+ ]& `" `$ r" {5 j% Q. n8 `
                schedule = new ScheduleImpl(aZone);
. H2 H, J0 G% ~, C1 O1 t. O                try {
, _% }2 E7 Q0 Z1 }- R/ a* S3 a& c                        Selector agentSel = new Selector(Agent.class, "agentStep", false);$ z' I9 I% F# p
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 ^  Z6 |" J1 X7 v
                        
9 M5 a: q, s7 n- ?, L                        actionGroup.createActionForEach$message(list, agentSel);2 y1 m1 u1 s2 ^8 @$ T+ {9 u: Z
                        actionGroup.createActionTo$message(this, swarmSel);3 X: E0 V( j6 B8 {) X# \" ~
                        schedule.at$createAction(0, actionGroup);- v! V5 M/ [+ o- R2 Q& y8 i. B
                        schedule.at$createAction(1, actionGroup);2 t- M2 K9 m5 Q# D9 U  c
                        schedule.at$createAction(2, actionGroup);
5 I- j+ G' t% G
+ q9 N& s; W% S4 @& A% o, ~                } catch (Exception e) {
/ g, m& u. _, a9 c6 v+ `                        e.printStackTrace(System.err);, O, i2 b# U- F* R7 P
                        //System.out.println(e);
; q  j+ }. S% R; K                        System.exit(1);# H9 G: K2 {3 ~" L  D7 g
                }
) O' k" r1 {& h2 x" S! v8 @
0 i0 \- U8 ?2 c# d1 X6 }1 c* k5 E1 J, _2 l
        }! V& [7 v' I3 w& k4 g4 G
8 V( M5 e" g9 k
        private void swarmSetp() {) c# Q; h- }. f9 Q2 F
                list.addLast(new Agent(Id));
$ p: u9 [8 V; q1 e2 ]5 x$ {& v                Id++;0 J, J$ W! r1 Q0 R8 x/ f
        }
0 G7 r3 |( j, O# ~7 i% h3 z: X
, a3 i3 R) E( L! H) X* m8 ^        public Activity activateIn(Swarm context) {
( Z& W$ Z% O  y, l# m: Y9 q                super.activateIn(context);
' x- p/ F+ Q, M/ M% T                schedule.activateIn(this);
( L, ~/ ?; [1 K9 d, g! t                return getActivity();3 ?9 V! v  ]! m5 U6 g) h) t
        }
! Y: n# |$ T4 @# e$ x) n
4 Q  U3 |4 t9 {4 [1 L6 B, ^( p        public static void main(String[] args) {! N/ A* r1 B' j
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 c. {& n& p* f; b" o  l
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 g8 W$ L( }: K0 C& _4 F' \  z! |; m                swarms.buildObjects();
/ D0 O, M, v( ?0 g/ [/ ]9 V* Z                swarms.buildActions();( e; g5 x+ P. `& `2 W
                swarms.activateIn(null).run();: z0 b" W- U6 {
        }8 o% @. h. e; E- @8 M7 j
9 X6 ^( R9 e- C
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-12 03:54 , Processed in 0.018885 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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