设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10342|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( z: N! c$ X( ^, H' k! C6 x
7 E; }3 p2 ]8 S0 n  @$ [本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) Q. g- }3 X" |7 c: J# j以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! r( U( t% g* a/ y6 S: J
swarm.SignatureNotFoundException5 q" P7 ?2 d# I6 `6 d
        at swarm.Selector.<init>(Selector.java:76)
/ ?, c  A! B5 E1 b        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! i7 {! ]/ C+ L6 T* F
        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 G7 B! L2 s$ i! [8 W

5 J, M8 q, `4 N" ]# D: y% q9 _( R" {2 p/ Z1 @8 H! s
import swarm.objectbase.SwarmImpl;
. N; f5 v- O2 P+ z% d3 himport swarm.objectbase.Swarm;
/ h# p* y( F1 W' V/ Wimport swarm.activity.ScheduleImpl;# S$ N1 C+ L1 ^  |' B& t8 ~5 ~
import swarm.activity.Activity;9 Z% ^" F7 w; z% N2 o* Q
import swarm.activity.ActionGroupImpl;* p- H* ~; h* [" w+ d; c
import swarm.collections.ListImpl;! j. n% o1 S# G' d
import swarm.defobj.Zone; 6 o7 y3 s, `* ?# K. W5 d
import swarm.Globals;3 w8 x9 }* {# P$ L
import swarm.Selector;: }# s% c/ `6 ~7 e, Q
import swarm.activity.ActionGroup; ( r: E$ Q  y7 A$ g
class Agent {% w% q8 b! m. G3 R- m1 I
        char id;  q. |7 a' A4 {
0 {' I* _, S+ h5 z, |. H9 i7 I  U
        Agent(char id) {
2 V  L( e' D  H4 X: M* l6 F                this.id = id;$ R& c; Q. w) N1 C
        }  [5 R/ X/ F! o3 o. e0 R4 e8 B

* r2 F7 ]. q5 y: s        public void agentStep() {. Q+ V- M% |" ?
                System.out.println(id + ":" + Globals.env.getCurrentTime());
) ^% z" A. e& |0 B8 U4 w        }
8 c7 n' l/ c, _  D2 D}
" Y0 A/ m4 R6 w  h5 u! A* y4 G1 ?' {9 B3 R; [7 f# z' r
public class ActionGroupDemo extends SwarmImpl {
: J6 |3 p& D' ~4 ~$ m- ^        ScheduleImpl schedule;
. j4 U# c: v6 M  T- s        ActionGroupImpl actionGroup;
7 i2 k' }& b/ T6 f        ListImpl list;
( U( ?$ E% }6 `- t' ?4 \! o+ y        char Id = 'a';
5 f7 O9 {& _8 F. y0 E
/ O% U! l, F: ?9 I, L5 n        ActionGroupDemo(Zone aZone) {
$ H9 u; f6 S1 o8 N4 o4 Z' J0 z                super(aZone);) G, e6 N. P2 a9 l0 w
                list = new ListImpl(aZone);
) J1 j* c7 g9 U) o( D                swarmSetp();
5 T. T2 ?) c9 G/ o2 ]                actionGroup = new ActionGroupImpl(aZone);. I" }$ e# w* `  Q3 B
                schedule = new ScheduleImpl(aZone);. {. E3 H5 L# M  h) x1 `3 j
                try {& I& A2 J/ _$ ^6 f# G4 h' d
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
, g$ o4 l3 A0 n4 J6 F) u* B& B                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" L0 `- S) T. ~" {( z                        
* i, a* ^9 X2 x- @! p; I                        actionGroup.createActionForEach$message(list, agentSel);
2 A+ f( j1 q. N1 a                        actionGroup.createActionTo$message(this, swarmSel);- o- B) C- o& u7 y
                        schedule.at$createAction(0, actionGroup);% |4 m8 Q' M; ?) w$ D+ e1 `  O
                        schedule.at$createAction(1, actionGroup);
! u3 r' q2 ^! A5 g/ \                        schedule.at$createAction(2, actionGroup);+ r9 I& @0 e) h4 r8 c4 R

8 }; ^$ O$ W, c" x; c/ p1 n: J+ A% ~                } catch (Exception e) {* u* e" P" J) ~  P. I" Y
                        e.printStackTrace(System.err);3 B5 |7 r  ?, n( a0 ?9 q6 Y4 z
                        //System.out.println(e);+ W) e! s/ ~) M# R" K: p2 [! k+ C# {
                        System.exit(1);
: x. }  N8 g9 {. J8 ~                }8 w- j0 _' R/ g; n

9 ?4 \  P+ s4 a
9 c5 p1 m. q  W3 {; U$ z9 q% j        }
4 a0 i+ q2 I; |# @% g2 s1 M& U; R- B
+ V0 l4 w9 _4 C5 V& T& X% y        private void swarmSetp() {* W( h6 l8 `- _4 F% T
                list.addLast(new Agent(Id));- I0 E0 \" S  u2 M" S3 B2 v
                Id++;
1 b2 d0 H, q& R7 l: \        }
1 F7 F$ z* d2 t. ]$ Q/ J# ^9 ^7 l4 U1 x% D# L
        public Activity activateIn(Swarm context) {; V3 H" S( a$ B3 A+ K
                super.activateIn(context);) a2 N/ V$ @+ b9 T2 T
                schedule.activateIn(this);
* k; I! L2 {, ?' i! h" B: H                return getActivity();: j* F" W+ {/ ~0 H6 y5 k% h( s9 u
        }
" \# d; q7 D& J
: ^+ T8 ?$ J8 l4 q. h$ k        public static void main(String[] args) {
$ N8 q( ?: A3 P- k/ Z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 B/ e  s0 [; D4 J) I                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% ~- k) ~; w& f8 X9 M4 J
                swarms.buildObjects();
. S% m3 {& ^' L4 a5 [7 m                swarms.buildActions();, j6 y1 V5 M& F! n1 U$ R- N
                swarms.activateIn(null).run();: a! S1 j* H4 o: n5 \
        }1 Y6 s7 d0 A" V5 g$ X
. |- ]  W; P; ^" t0 j8 }: _+ ~
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-11 15:03 , Processed in 0.014837 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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