设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6449|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 x( f( }+ h/ l8 R5 K
1 i# v# c6 y& }/ j4 J
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& E% [3 h+ \& f1 u2 V
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 H1 y- d5 Y3 lswarm.SignatureNotFoundException
% P% M  X% N1 D0 F8 {+ M* k        at swarm.Selector.<init>(Selector.java:76)" @* c/ q  V# [1 Q* A0 [  ~
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ l3 `1 s+ J4 t# x' W/ ^        at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 D1 @  h/ F" M( s) L* U/ b$ v' z* G" @% f& u7 V+ G% v
% j+ c5 v1 V+ R  f2 H
import swarm.objectbase.SwarmImpl;& o* A0 _% x+ u. K' Z
import swarm.objectbase.Swarm;
: k: O* h, G5 Y' A! O$ E! ]; ^$ E2 eimport swarm.activity.ScheduleImpl;
% A) g3 |1 v4 J2 G7 B3 A8 yimport swarm.activity.Activity;- k4 i9 j; q& j* f
import swarm.activity.ActionGroupImpl;5 L' x/ \2 O( _6 ]4 P
import swarm.collections.ListImpl;1 K) z+ a! N+ N4 t, z/ y
import swarm.defobj.Zone;
: F5 f5 J8 N# ?; N9 Eimport swarm.Globals;* s0 C5 v  D; V6 j+ H3 V
import swarm.Selector;# W+ i4 A4 a; b2 E* D
import swarm.activity.ActionGroup;
4 a; o/ L( n7 Z/ k3 L% F6 t* O; U# P' tclass Agent {. h7 B! p6 P4 f% z
        char id;
  f8 m( g+ Z6 c7 k: y4 I  k9 h( n8 c5 \/ _: N) Z
        Agent(char id) {0 W# A# s' w) Z; B
                this.id = id;2 P3 a* b7 F. ?- `
        }
, F# q2 A3 M: |2 F7 p' X1 q1 [
+ ~* L; e& n" e5 h! J0 m1 }        public void agentStep() {
, H# Y7 f/ z* H( \: f6 x% r                System.out.println(id + ":" + Globals.env.getCurrentTime());# c9 W3 E5 }1 \' o5 ?* X5 Y
        }
1 Z+ Z& ]& d# u& C}
# B# V" X3 z( s9 K6 v7 D0 t7 S: l+ c  t' f$ x8 F
public class ActionGroupDemo extends SwarmImpl {$ W0 ~$ b# d% q% V* d, l
        ScheduleImpl schedule;2 e3 V1 K- g* P9 y
        ActionGroupImpl actionGroup;: g) O$ j- u0 |* I0 J- j
        ListImpl list;
% @- v1 e# k0 O4 M. [9 B        char Id = 'a';/ j5 k4 ~5 `) W4 r9 q
( [8 d- F" n$ K2 _8 l! E6 q- s" F: t# V
        ActionGroupDemo(Zone aZone) {* u' }6 o7 M! j3 s$ c- B# A
                super(aZone);
* z  q  U, H& E                list = new ListImpl(aZone);
6 M4 s9 X" i# v" F8 x* ^& i0 ~                swarmSetp();
- t' H% C& {! Y                actionGroup = new ActionGroupImpl(aZone);
5 e/ k1 O/ w9 [. \; c                schedule = new ScheduleImpl(aZone);
: v  ~" o& K/ X8 L  n                try {
% [$ J. r6 ?- e                        Selector agentSel = new Selector(Agent.class, "agentStep", false);. ]9 P! }3 ^" z- g8 w% ~8 {
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' q! ~+ e" A2 D& y- J                        
3 E0 k7 E: R+ \; J0 `) i2 H                        actionGroup.createActionForEach$message(list, agentSel);
8 k! p( d8 u4 N2 G0 A3 {! p                        actionGroup.createActionTo$message(this, swarmSel);" F1 }" t: T' P7 K0 k
                        schedule.at$createAction(0, actionGroup);' C/ F6 L- R4 m2 r! M( H
                        schedule.at$createAction(1, actionGroup);1 b  ~! s6 X7 o4 K- h
                        schedule.at$createAction(2, actionGroup);
& G0 Y9 u. l: ?' ?1 Y) I" P! n; ~8 p  [, U* N( x7 F4 U+ k- S
                } catch (Exception e) {! L3 a* ~- n9 X* c% C. s
                        e.printStackTrace(System.err);: t( m1 M, S" g3 e
                        //System.out.println(e);
) Y! J, W4 d' d' ]$ d$ |                        System.exit(1);
) o' X  z3 y4 v' Y3 h8 q0 h                }4 O3 X- X; x4 P2 g+ q- ]

$ A: T  J. c; q! P3 M
5 u, {# O# I3 }4 K: O' d& N        }! ~+ b$ V1 A4 w4 |

4 z& s8 v# @/ o9 b8 U0 h* _$ y  C1 A. x3 l        private void swarmSetp() {4 _0 I3 Q0 H: @3 K( K5 O
                list.addLast(new Agent(Id));
7 ]. a7 D/ S8 x; Y! q                Id++;$ z6 i$ u. G( ?1 c
        }- b/ I' o/ ~8 x' |: N. `7 ^1 F$ g; D

& z) M, \; m7 h% k8 D5 _! C9 T0 s        public Activity activateIn(Swarm context) {
5 O$ H' i1 G, t. p                super.activateIn(context);
$ l/ f  f  k" X$ E9 W8 h) }                schedule.activateIn(this);' k. J2 p; B2 T/ w$ `
                return getActivity();- t9 _" x' m, |, F3 l
        }
$ I3 m6 G, a/ n/ Q7 ~; f6 o' X' J( T( P  V, D: h/ B5 |. \
        public static void main(String[] args) {
4 d1 W7 K; b) X" l$ r, e                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ T0 t/ j" O) U6 `' a* x8 ^
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 @6 k: R5 t, L) V                swarms.buildObjects();$ K! _$ [2 u( j; o& N
                swarms.buildActions();
) E- U" X1 n, S& l( I: u% E                swarms.activateIn(null).run();
7 J6 T! T  F0 {( ?" I& d' q        }
4 h0 g( Z. v4 s- l! B( b6 I5 W; @( J: e( L; M3 ?& y7 r7 b3 K9 G
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-28 20:29 , Processed in 0.014726 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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