设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8288|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! r; \9 y4 p7 m1 w) ~* o- b7 h2 {4 J% J% i" b# x
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- q+ Y1 y8 ~6 a5 e- I
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 A: r# g; t+ s, \4 u1 I5 S9 b
swarm.SignatureNotFoundException
8 B% m0 n# V: D8 X        at swarm.Selector.<init>(Selector.java:76)* u8 L, \; F+ |$ e8 S! v
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& z# X2 Y5 b. A3 k        at ActionGroupDemo.main(ActionGroupDemo.java:67)
! a+ J. I. a# T; X
2 ^0 R6 `  m% h  h) O! @5 i$ l
+ P# Q4 i. `& i5 M- Rimport swarm.objectbase.SwarmImpl;
' T3 j5 k' J' q" i9 W- t7 uimport swarm.objectbase.Swarm;) I8 }4 S7 S2 I. U$ c& }
import swarm.activity.ScheduleImpl;5 X  m) C( ?2 M* |8 a0 y: |% e
import swarm.activity.Activity;
- w4 Z4 ^# b* ]import swarm.activity.ActionGroupImpl;1 q' m8 M/ _1 I: x  G
import swarm.collections.ListImpl;
. F4 J8 D9 P% `9 X2 i# F6 \import swarm.defobj.Zone; . Z* S9 L! g. D9 t) \+ S  N
import swarm.Globals;' c( a9 I- \! I. ~. ?5 p6 ?: ]
import swarm.Selector;, @4 w. {8 Y/ B6 K+ P
import swarm.activity.ActionGroup; ' O1 u3 K+ b- d
class Agent {* D( x4 j- H9 G8 x
        char id;$ s  [$ w1 n! d, f& F

' H4 R3 Q3 m/ ?9 r2 L* p        Agent(char id) {& S9 C& S/ Z" u' I# z4 w+ l7 Q
                this.id = id;. ~% t  a# f% q" U8 k. v
        }% J- u# L4 p  o7 j6 C

, G$ B: q: O+ G' p! Z9 D        public void agentStep() {  ?+ b, f, U) z# p
                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 X9 B) P5 o$ e4 {        }) F! L" g. @; M' s4 f# }
}! n7 v2 `7 F6 G2 e, O$ t5 M
. n! D7 E# B5 w. K
public class ActionGroupDemo extends SwarmImpl {9 y$ N: |; N0 R4 K. s$ V
        ScheduleImpl schedule;
4 D. }2 A! p% `$ {* ~  X        ActionGroupImpl actionGroup;
1 N5 c. L. V) e* x7 a3 d8 g  s        ListImpl list;
* @% I0 r# q# n- k8 @        char Id = 'a';1 A' W& u1 V8 r# T! c
: F* r8 x8 I) q* |: i
        ActionGroupDemo(Zone aZone) {
" f+ W( V1 V/ e                super(aZone);- X4 R  \* C/ Z" ~
                list = new ListImpl(aZone);/ H: j- i; d* o
                swarmSetp();
- s4 A" v$ H/ p; Z+ i6 N                actionGroup = new ActionGroupImpl(aZone);
6 D6 e" v3 w' p% g" T* I                schedule = new ScheduleImpl(aZone);2 `) l+ S, r0 U, I2 `& S- Q
                try {
- {. Q' B* [4 D4 ~+ S                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' R  B6 m1 C# U2 Q: M; Q
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# x) Q: d3 k, x! m                        
7 o, j  u. ~8 _# i                        actionGroup.createActionForEach$message(list, agentSel);* i* X+ w7 G2 r
                        actionGroup.createActionTo$message(this, swarmSel);# Y4 b8 j" ^6 n3 r& D
                        schedule.at$createAction(0, actionGroup);
3 |4 m" `! X  \                        schedule.at$createAction(1, actionGroup);
" U' \4 b- U1 F6 r# X# ^# v                        schedule.at$createAction(2, actionGroup);
, g/ r! n1 X) C8 c" q5 W" P! V) a4 E2 {3 }" i; j" J6 V
                } catch (Exception e) {
6 E1 [4 e* l3 K' t# W+ p- t0 Q                        e.printStackTrace(System.err);
. g$ Z) m% p: e( k# j% ^7 i                        //System.out.println(e);0 J' j3 ], V6 _' Q
                        System.exit(1);" k7 _  K) |5 g+ \4 H) A
                }$ r5 x1 h& R& [; q

* O' ]+ s* h4 y) e7 Z( J+ ^. @% {8 ^9 }% q# }: ]
        }
9 ?9 |, T  o- n- j3 M: |' x4 i: t. R# e" b& L
        private void swarmSetp() {
# o3 k1 N% N, ?" v* ]. A                list.addLast(new Agent(Id));- y+ D- [( u: O- l4 ]/ O! R
                Id++;# h1 n6 W1 a; m; H. z  T, Z
        }
7 S9 |8 a* ^" N8 D/ n" n% N' m
0 m% {* A- L/ o# F; ~        public Activity activateIn(Swarm context) {$ ?7 ]! z2 {; I" P9 U1 G2 G6 p# R
                super.activateIn(context);! s# T' B0 N9 e. R( a
                schedule.activateIn(this);
7 P/ i$ C% q$ A2 C* }  X                return getActivity();
0 g+ Z# h. e( I" A/ z/ I$ w7 Z        }( Z  S8 H2 b0 B% ?7 s, b* ^2 Z

8 M/ P. t; g! j3 f( O: H. f  q        public static void main(String[] args) {' f" [) x2 M# O. s$ j
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 R3 [4 H5 X4 d' N                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. C& Z: n" R$ v% }                swarms.buildObjects();
9 U) u3 i8 D0 z! N7 Y- y- Y5 c                swarms.buildActions();
: x, R3 [( K9 D& f' w3 T* k                swarms.activateIn(null).run();  ]7 v8 c" F/ ]9 w; F$ v, [' f
        }
0 v0 F6 T+ m3 y& h/ g) i, i8 A2 ^
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-6 17:09 , Processed in 0.015871 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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