设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13853|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 R1 e- X0 }3 m2 H% T! a1 R7 m+ q% _8 O3 q3 ?
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 U5 X2 x5 u4 S5 V' }
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 L. T7 S2 Z" v: iswarm.SignatureNotFoundException; b6 j0 \. C' |$ ]
        at swarm.Selector.<init>(Selector.java:76)
# \% Q$ b2 U6 l# V0 N2 K7 L        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& Z+ c9 n) f7 Z. K1 m, i        at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 F( V: W& H& N( F4 {* Q: Y3 O6 g' M' E
& u% F8 [2 H  o2 i" b3 O
import swarm.objectbase.SwarmImpl;# j0 {5 K- E* i: c7 U
import swarm.objectbase.Swarm;
, j& l. v6 [, h/ w7 ximport swarm.activity.ScheduleImpl;$ |4 K+ j8 e+ `' [
import swarm.activity.Activity;. @7 v$ A; W+ R7 }
import swarm.activity.ActionGroupImpl;5 _) y9 M5 m) @' d9 |6 t, @
import swarm.collections.ListImpl;4 d- ]( h( h5 v
import swarm.defobj.Zone; ( J+ X0 T3 h6 i5 {" i
import swarm.Globals;) M/ ~% N+ H1 h+ n7 |% @
import swarm.Selector;
, @. n$ U5 c- _0 D+ b6 Aimport swarm.activity.ActionGroup; 9 G% d' A# O/ h/ @
class Agent {7 \5 X( l0 I; I6 u' n4 q
        char id;
* A. l8 m  k0 a  H& m7 ?9 Q
3 Q; d  K( s5 J        Agent(char id) {
; I/ F5 Z8 _3 {                this.id = id;& U2 \* }8 ?3 S
        }
+ u: X4 g$ V- M* e3 P6 l5 C2 F5 ]# @5 W- ~  U& r; g! @
        public void agentStep() {
0 k; \' b# x- p% h! a                System.out.println(id + ":" + Globals.env.getCurrentTime());" [- M' b' R6 S
        }' u0 a0 d8 H4 s
}
5 Y7 _1 f/ b! H- Y, O' E/ n/ R# I# }4 J! U9 ]4 h1 s/ z* L& }
public class ActionGroupDemo extends SwarmImpl {
6 N& e/ }7 d4 m; R5 h. r        ScheduleImpl schedule;
9 d; |7 t* h* x+ R/ l        ActionGroupImpl actionGroup;
! o- Y9 Q3 p" s( w        ListImpl list;
0 N. @2 d9 s) P( G0 h! k        char Id = 'a';
0 h5 U% u, ]" S% ^7 @" a$ k( n; ^* J6 [) C2 g
        ActionGroupDemo(Zone aZone) {
4 i* X( ?; @/ C; y1 x' d8 F% {$ f                super(aZone);
9 f9 T# x9 P6 @/ s! f) P: T! `                list = new ListImpl(aZone);& B# X; q6 k8 p- \9 L7 E, `1 ?
                swarmSetp();
" R3 K0 L  O: Z$ v# [0 D                actionGroup = new ActionGroupImpl(aZone);% v! F5 S# i' {. l8 x
                schedule = new ScheduleImpl(aZone);/ B( t' u# |8 u1 @
                try {4 V) F9 ?# ~1 c0 M
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);% o" O; f" z5 R0 U
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# ^. n% c0 H. G" m
                        % ]7 V# m1 l' C& P, m  z4 @
                        actionGroup.createActionForEach$message(list, agentSel);9 f6 |. Z" g: {1 E' A
                        actionGroup.createActionTo$message(this, swarmSel);& y/ `5 G( [' |( Z0 ?! r/ k
                        schedule.at$createAction(0, actionGroup);
$ `! M7 s& R0 \! _; z- w                        schedule.at$createAction(1, actionGroup);
( H% K6 |; s9 J9 _. j) Y5 v2 @                        schedule.at$createAction(2, actionGroup);
* `, v) o9 F# y' Q( h. |
: @: R% _; |" A$ I                } catch (Exception e) {  G, \! B/ r* @
                        e.printStackTrace(System.err);- o, E' J7 y/ g; K
                        //System.out.println(e);+ E' Z+ V8 Z; S9 p
                        System.exit(1);
& j# s$ e: M/ J2 a! E                }1 s# g0 |& h1 `

' T/ K, o0 ]5 s/ r) e+ @' l2 a  U& l/ V/ q# e, O% E
        }5 m0 I/ N& ?* q  S, x
" K3 ]1 |/ r6 {2 e
        private void swarmSetp() {
8 g9 n9 Z9 \/ S: w                list.addLast(new Agent(Id));
1 n& O/ ?& Y" J& C                Id++;
: [1 Z5 f5 G6 a& w        }
# O7 _( J' `/ D8 X
1 s. V% y! q6 |+ H( F4 n        public Activity activateIn(Swarm context) {
6 b. V+ f8 g4 q( c( q                super.activateIn(context);
0 b& H5 B5 f$ d( q                schedule.activateIn(this);$ v2 b1 q+ ~* _6 I
                return getActivity();
& K' ~' g0 c+ ~& [; @$ Z; X        }
* O+ p/ `( R4 A6 r* I' \! ]$ I$ e: x
        public static void main(String[] args) {
* ?+ g. d5 n, _3 k3 V' G                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);  [2 M/ l) _* U& U2 J  n
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. R% x) h2 ^3 [# N& p; Q
                swarms.buildObjects();
# V9 y# X1 g9 {) o' s' U. o                swarms.buildActions();
) k" k0 I7 Z4 j. S+ _* E' c& L                swarms.activateIn(null).run();  v5 k7 \  x0 C4 C
        }; [: G8 L4 e! ~7 S

8 D. i, u% L4 L: T; G}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-19 18:12 , Processed in 0.014103 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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