设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11471|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 w& S0 W; t! ^) K

7 D6 V6 j: B% h) Y+ U本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# u1 I% {8 U: u
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' D- g+ x! x& A9 r- m
swarm.SignatureNotFoundException
8 {9 V8 s' `" T5 O( W+ H4 l- @        at swarm.Selector.<init>(Selector.java:76), {+ ~- \0 R0 Z5 B0 d$ A( n( u  `
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 Y% s/ z7 e2 Y8 I8 ^" }. P! F
        at ActionGroupDemo.main(ActionGroupDemo.java:67)! g3 S1 U( F; B, t8 N. |% |
6 g% z& ~; b* t7 T( W7 Q
4 h! S& P  x- N( N, K
import swarm.objectbase.SwarmImpl;: q6 Z" J) s2 v/ o  I
import swarm.objectbase.Swarm;6 J1 W1 K& n( _( I  O6 s8 T9 L! N
import swarm.activity.ScheduleImpl;+ Y$ r2 @6 B5 p5 ~
import swarm.activity.Activity;' A' ~4 V" E" ]2 U( g) z% n, ^
import swarm.activity.ActionGroupImpl;/ Q3 o/ c$ s2 G* Q& s3 P& U
import swarm.collections.ListImpl;8 E" `2 t9 ^2 O( ?" V2 F, |
import swarm.defobj.Zone; ) I% b5 O3 _- l7 ?4 K
import swarm.Globals;: d3 n6 k0 d7 e  m7 s" e5 V" A6 O
import swarm.Selector;
) R  U& G' u7 d4 Mimport swarm.activity.ActionGroup;
& ]* `5 p# J/ c/ Z* x3 y% z5 P2 n+ U) sclass Agent {! _; f/ x: ]- D
        char id;
/ k* e4 y, r7 B
. _7 l. e- d5 `        Agent(char id) {
+ v0 C3 i; {, Q2 |% Q4 I% ^                this.id = id;7 P! m) ]* \/ o
        }
  R: e8 P# a) p, l5 D% T
1 P: N/ G; ]/ ]: x6 U. @        public void agentStep() {2 m. t) z* F! E# f. \. e
                System.out.println(id + ":" + Globals.env.getCurrentTime());
" ]7 L, i1 q. i7 S; r7 W+ s        }
# x7 r, w; t7 S% w9 b. E* F+ a}
: @1 P. ^0 t/ [7 j$ `( T4 P9 \1 `4 E  j/ F* N: M4 c; V
public class ActionGroupDemo extends SwarmImpl {: U$ Z/ }# C4 `# A
        ScheduleImpl schedule;
& r; `1 C9 @8 }# A        ActionGroupImpl actionGroup;" P' |- i% b3 H0 k0 ~! N2 q
        ListImpl list;$ G" w+ M# j1 D: G3 f& ~
        char Id = 'a';
: ], ]( F6 B" A% j; n1 v- ^
! _# a1 b0 X$ J0 }- a2 v6 q        ActionGroupDemo(Zone aZone) {1 P2 l4 h0 H0 S
                super(aZone);) _" u6 E  k+ ^, d, X" q7 K
                list = new ListImpl(aZone);; b4 p" e. ?: v9 \/ O0 [' @
                swarmSetp();
7 |3 O# U& a/ H# H; W6 O% p                actionGroup = new ActionGroupImpl(aZone);2 Q/ D- O2 r* G5 D6 e+ j
                schedule = new ScheduleImpl(aZone);
4 h9 k7 B: W) z" O8 Z                try {
6 N- C/ k9 D' J' j1 w* T                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( A' j$ A, L& C6 f                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  a- k3 d; [, y. K                        . o: U/ P. {# V" b( \9 o
                        actionGroup.createActionForEach$message(list, agentSel);
( Y2 d$ G( n# y; @/ ^- Y                        actionGroup.createActionTo$message(this, swarmSel);
6 S! `4 a2 V- ^                        schedule.at$createAction(0, actionGroup);4 C* s! i* g8 U' Y% w# q  t5 p+ b
                        schedule.at$createAction(1, actionGroup);
# s3 j; S! Z9 ~5 n                        schedule.at$createAction(2, actionGroup);
0 D0 B  k4 O: Y, s4 o" v' R% y& [) k5 C$ ^" o0 w9 K8 U# y: A! Z
                } catch (Exception e) {
4 W8 o4 C( _; V! i7 J7 F                        e.printStackTrace(System.err);
0 d, C# z5 Q1 Z" X% t8 f- u" W5 }3 C% t                        //System.out.println(e);4 b# y" G! t+ S$ A% L
                        System.exit(1);/ l( {/ W+ }0 r% }* ]  b; Y
                }
$ s, I" ?5 o" ^$ y& _
. g6 l$ U' z7 \) z9 d2 M
7 [$ V6 E0 _  n0 t        }0 L1 z7 t) `5 H! V* O! u4 f

# h1 w8 N) i9 y        private void swarmSetp() {' ?( f1 i. G4 j2 i7 h' r
                list.addLast(new Agent(Id));1 b# K9 F/ m& z
                Id++;8 s: h0 B; [1 ?
        }6 I$ f6 ?/ l) Z' j
( M) o7 i. a! l2 q* h) Y  c9 S1 f
        public Activity activateIn(Swarm context) {
3 O+ P3 x, y$ Q  ?2 r& }                super.activateIn(context);) d1 L3 {- Y8 |* @
                schedule.activateIn(this);3 n! K6 e& y& W1 d) V% j
                return getActivity();
. C3 ]" K8 m3 |6 K% I, y        }% H" x5 o7 L' j; A
- U, L: z' `* T9 ^
        public static void main(String[] args) {
- B5 t1 Z. B* `* @                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- j. l! c6 w" |9 o1 H# I2 c+ P/ b4 ?
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# E& S" v/ ]7 l- z- I; z0 @
                swarms.buildObjects();5 ]5 [# {) z2 s. P9 v1 _
                swarms.buildActions();) `$ [/ L2 p& r8 K
                swarms.activateIn(null).run();
; w/ W* U' Q- K" i. p' A        }' F* ]3 T3 n- h- H2 x# T. b

+ u# O1 G' V2 p) j3 m  j! {}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-13 11:21 , Processed in 0.016912 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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