设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11658|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" b& a- T4 h4 j9 W- b4 A3 ^8 {- p2 b. R8 u4 L1 l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* j6 s( X7 Y4 s
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 f4 v* B+ S# [, d! r
swarm.SignatureNotFoundException
4 m  y6 Z: h; g' T        at swarm.Selector.<init>(Selector.java:76)
. l) Y0 i$ b! H* M! K8 ?* D( c4 ]        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, d$ V+ g3 X) S) U        at ActionGroupDemo.main(ActionGroupDemo.java:67), t, o; P8 t- M( ~
& b5 p9 v* S3 {& [4 Z" u
  O0 ?5 D' C& d3 R5 }3 i
import swarm.objectbase.SwarmImpl;
, {5 F2 C8 E4 `6 g- r5 _import swarm.objectbase.Swarm;
9 c5 s; K8 @2 ~import swarm.activity.ScheduleImpl;
. e' \% G3 j& d# @1 l6 A+ Cimport swarm.activity.Activity;( ~; g  [& Z7 ?1 `
import swarm.activity.ActionGroupImpl;
* `$ ]- D2 G( F: R# \8 A* E6 iimport swarm.collections.ListImpl;& m- g4 R- F$ E  w
import swarm.defobj.Zone; ( G! D8 W- P# q' K# ~8 x7 ]
import swarm.Globals;3 v5 y% w- ~7 D, r/ E2 A
import swarm.Selector;6 ~4 v# N6 _2 Y/ v' I3 ?* N9 v$ y
import swarm.activity.ActionGroup; ) \6 `( ]9 j9 ^3 o, ]
class Agent {1 z& S2 w3 T5 X# \
        char id;" [+ \) o# B) V' y! A

+ }( Z1 `# _8 Q: d3 U4 c        Agent(char id) {& u. g5 j3 }9 N! v/ i
                this.id = id;1 I$ _: U3 ^- I" y. M' |4 o$ F  d
        }: O3 v0 Q1 R/ M6 ?1 [/ e
5 U4 m% [) R% w# {
        public void agentStep() {% E; [; U' d, ]" s7 o( l8 V
                System.out.println(id + ":" + Globals.env.getCurrentTime());
; t( y% q' g5 Z' h7 A        }( k" X9 q' v2 b( w  w) F
}
$ I) C: A8 ]8 N' Z1 A8 U& w9 a# k  L* |& h  U6 N( d
public class ActionGroupDemo extends SwarmImpl {# l! u: ~4 I8 \* J! C8 q
        ScheduleImpl schedule;
( l/ a% l! l$ X" j2 Y        ActionGroupImpl actionGroup;
! j( e# c8 {% n$ l        ListImpl list;$ E: ?+ N$ c+ a4 l: q& N, {
        char Id = 'a';
* c1 ~# J4 N. ]+ G4 M) b
2 v( R" O" a# v. v# y9 t( M        ActionGroupDemo(Zone aZone) {
% O, Y" B) I+ e- i3 Q* ]1 Y                super(aZone);
/ H( S  G& r; Z4 d4 S8 L6 `                list = new ListImpl(aZone);
% V! v* Z( R% N% l. L- v( i3 B1 k* @                swarmSetp();. I" q6 ^3 Y* V. q  t* }* ?
                actionGroup = new ActionGroupImpl(aZone);8 G) S- G. S! b+ B( Z- L
                schedule = new ScheduleImpl(aZone);
* S$ V' O1 @) F                try {
5 ]/ F2 _! K/ |                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
" o5 x, }+ ~1 @* o% _$ I8 p                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 r" L$ \' x7 C# ]' v+ u8 \* j6 ]
                        
& d6 E' u' _# H( U3 J  f                        actionGroup.createActionForEach$message(list, agentSel);
7 W# \7 ]# c4 `- X# {1 i                        actionGroup.createActionTo$message(this, swarmSel);
7 h. m" h0 t9 `! F; L                        schedule.at$createAction(0, actionGroup);" }7 {; x- s5 _; Z
                        schedule.at$createAction(1, actionGroup);
! Q' u/ a# ?. t' R+ _: A                        schedule.at$createAction(2, actionGroup);/ H% ]* R# ]/ I# c* j

; `, Y$ v1 t1 v3 }3 n" O: v                } catch (Exception e) {% o3 |/ ]+ H- e8 p# B
                        e.printStackTrace(System.err);5 m$ V5 L: y" e! [7 N
                        //System.out.println(e);8 `6 S/ |$ D0 y  {
                        System.exit(1);
! {  n: W" d2 `0 O9 H                }1 k% R- b1 K9 {1 U
$ w8 C4 V' C( N/ H9 P7 t
; {, Z1 h$ z( E5 [( @
        }
1 h/ r. I$ n4 m! i/ w1 n/ T, R' v" K+ h- S
        private void swarmSetp() {
  U7 \( |6 M4 F                list.addLast(new Agent(Id));
$ X* ]2 x4 r9 ?                Id++;
- n$ H$ j! t  b* p( d        }4 v; h6 h) q' a- b
( L2 D2 k1 U4 f5 S; `# |
        public Activity activateIn(Swarm context) {
' ^( n! _; D7 l2 p  a& [/ X# r# o7 i                super.activateIn(context);% u3 Y3 o7 g. H3 v  U
                schedule.activateIn(this);6 D& y( g6 A1 l$ S$ u' V* N0 P
                return getActivity();/ O: K# j, j7 Z: M1 S
        }
0 S' x% ?+ r6 [$ D" b
( T/ U. k2 q1 J, d, L- }        public static void main(String[] args) {
4 e" q5 d/ ~: Q/ e; s  i  G  B* }                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 s2 v( l  v$ _( T+ {  l
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 F2 L0 T, T# R/ @
                swarms.buildObjects();
0 h) a" q; {) b7 U- Q! t                swarms.buildActions();
. Y2 J8 X$ u4 E4 i! S3 a3 ?, ~) |                swarms.activateIn(null).run();
& d2 q4 Y! S* K4 ~        }
( e0 d3 p5 k3 e/ H5 F& V5 v: o; v2 Y1 X9 x, E0 [6 c2 z
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-18 12:40 , Processed in 0.016102 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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