设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11083|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , d$ E( h! x1 d& u9 ], R% N6 d
' @6 t8 e( V5 O6 w5 e1 ~
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" U4 V( t1 y& a以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., G2 W) A0 A+ q6 G. G# n& f
swarm.SignatureNotFoundException5 a8 Y6 F4 o0 f8 a, q0 P
        at swarm.Selector.<init>(Selector.java:76)
+ `: u8 r2 X$ ^$ t; G0 J        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). `4 ]* k+ Q8 r! N
        at ActionGroupDemo.main(ActionGroupDemo.java:67)- X8 R! J1 o* ~+ O
) k+ Y8 h, T8 S4 h! E
' T* _) ^5 d2 P$ R- t, F
import swarm.objectbase.SwarmImpl;- B* c. p8 ]0 P* `
import swarm.objectbase.Swarm;. `# m& K6 E" D7 e3 p4 g8 N% I
import swarm.activity.ScheduleImpl;
  D' ~& d  B2 V9 ]import swarm.activity.Activity;
1 H9 O  [8 N2 p, s7 qimport swarm.activity.ActionGroupImpl;& @  D/ t2 m  Y# t  z  ~
import swarm.collections.ListImpl;" x' J1 r! e. z" U( f8 p' {
import swarm.defobj.Zone;
% A& A3 n( h& F. C/ P6 m% H. f- ?import swarm.Globals;! E# H) y2 U0 l
import swarm.Selector;8 V, P! h; S2 @! j% A/ |4 f& K
import swarm.activity.ActionGroup; 0 y0 d2 _- F9 J. x; {7 v7 @4 m" K
class Agent {  l; P; o8 X; O; x# l  L' \, t! J
        char id;4 o' e3 h: p  y8 o4 q8 y; q
1 w3 S7 k) d3 x
        Agent(char id) {
$ d4 v) J  P2 G1 k                this.id = id;9 l* B' f- s) N: E4 G" z4 @
        }0 S) }  e. f% `$ x1 C6 j

) e# I- I: P. I5 R( s        public void agentStep() {4 E$ c$ E0 n. }  J
                System.out.println(id + ":" + Globals.env.getCurrentTime());. ^& j, Z2 H% W+ p; d1 }
        }' m' B( E- d  K* D7 _+ ?  n6 _
}! l  g4 k' `, Y# d
7 W6 \. B3 [1 l
public class ActionGroupDemo extends SwarmImpl {- r' [2 h6 k; Z; H# Z
        ScheduleImpl schedule;3 {3 u$ f, j6 }, C
        ActionGroupImpl actionGroup;- t5 E8 N/ {' p/ X& b( {' X
        ListImpl list;' ?+ v8 u0 n* w
        char Id = 'a';  q, @- `3 q- |3 C1 D( E; H6 W

2 O5 ?( ^3 C# R9 F* \  S7 s        ActionGroupDemo(Zone aZone) {0 z( ?  |- h3 [& w' B  q4 l6 N
                super(aZone);+ F- j! X" x( \/ b
                list = new ListImpl(aZone);, C0 j  B3 z; c8 x" B" w, E
                swarmSetp();% }+ e) S* _4 O3 a+ R3 U4 @
                actionGroup = new ActionGroupImpl(aZone);
9 c1 E7 }2 ^% {3 \, H. }                schedule = new ScheduleImpl(aZone);
$ }# [) x  [0 R7 m                try {. X6 q' H# J5 ~
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
" x) a& z, M0 c8 X5 C                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  o4 k! J: F. @                        
# y1 B- ~) j1 Q                        actionGroup.createActionForEach$message(list, agentSel);( ]  \( }' i& H4 C! ?1 Q, H
                        actionGroup.createActionTo$message(this, swarmSel);  F  [9 E. \; ?& B
                        schedule.at$createAction(0, actionGroup);1 J: l; e; p' b0 L$ G
                        schedule.at$createAction(1, actionGroup);
( i) g" J& ^5 P1 ]5 m                        schedule.at$createAction(2, actionGroup);, n# }9 q- F" W
& h3 w3 n2 l4 B: ]9 f/ ]3 y) k$ Q. }1 E
                } catch (Exception e) {/ v: l& y6 W) \: x7 o) _+ u* H
                        e.printStackTrace(System.err);
& \9 I3 x; x" K9 Y3 ^: z3 q6 E                        //System.out.println(e);
4 \/ S. b2 X$ R$ ], J                        System.exit(1);
3 C) T% B9 W* y6 s( M                }
$ x% q& O% u. p0 B# i
9 }7 p0 F( ^/ x+ M1 i- V6 }3 h( k6 R  n- ^7 V6 o
        }( U1 n+ o' R" F# o
0 P1 r& F- S) z/ I
        private void swarmSetp() {) l; W5 b$ w5 Q- g1 a. S5 i
                list.addLast(new Agent(Id));3 i0 e0 ^) ]1 |" s6 C& V2 u2 e
                Id++;
) o, i7 |* ?% Y        }6 }+ `& a+ F) ^7 u

- _7 z# [; t& l4 k- [1 Y: O# j7 y  ]        public Activity activateIn(Swarm context) {" D( N+ o& l4 d  W$ l# H
                super.activateIn(context);6 J8 q2 J4 {* u2 z5 |7 Q
                schedule.activateIn(this);
( u, D# g: l8 m8 @* j                return getActivity();
8 n2 r& N% v8 s2 S9 Q4 w! A        }# Z9 S$ f! u9 {$ v8 x
1 O5 x' j+ f4 }- L% I
        public static void main(String[] args) {
* Z) N( t0 i$ L* l3 p2 `                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, n8 x* l7 m% i6 A9 ^+ N
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. O) C6 W, U; v9 U! ^) J, ?                swarms.buildObjects();8 J: v# X5 p& R/ C
                swarms.buildActions();& }% J, V  F0 A  _
                swarms.activateIn(null).run();# `/ e' w& e' j" L' e
        }
; ?2 ]6 E( P6 f/ I3 z, I
4 A7 e3 _* Q9 X$ p( J! A}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-2 12:36 , Processed in 0.014329 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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